package org.jsola.hr.vo;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.jsola.core.vo.BaseVO;

import java.io.InputStream;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

import static org.jsola.core.example.BaseExample.E_GMT_CREATE;
import static org.jsola.core.example.BaseExample.E_GMT_MODIFIED;
import static org.jsola.core.example.BaseExample.E_ID;
import static org.jsola.core.example.BaseExample.N_GMT_CREATE;
import static org.jsola.core.example.BaseExample.N_GMT_MODIFIED;
import static org.jsola.core.example.BaseExample.N_ID;
import static org.jsola.hr.example.AttendanceDataTempExample.E_ATTENDANCE_DATA_RECORD_ID;
import static org.jsola.hr.example.AttendanceDataTempExample.E_EMP_ID;
import static org.jsola.hr.example.AttendanceDataTempExample.E_EMP_NAME;
import static org.jsola.hr.example.AttendanceDataTempExample.E_EMP_PHONE;
import static org.jsola.hr.example.AttendanceDataTempExample.E_ERROR_COL;
import static org.jsola.hr.example.AttendanceDataTempExample.E_ERROR_REASON;
import static org.jsola.hr.example.AttendanceDataTempExample.E_IS_ERROR;
import static org.jsola.hr.example.AttendanceDataTempExample.E_IS_HANDLE;
import static org.jsola.hr.example.AttendanceDataTempExample.E_MONTH;
import static org.jsola.hr.example.AttendanceDataTempExample.E_SALLARY_IMPACT;
import static org.jsola.hr.example.AttendanceDataTempExample.E_SORT;
import static org.jsola.hr.example.AttendanceDataTempExample.E_VALUE;
import static org.jsola.hr.example.AttendanceDataTempExample.E_WORKING_HOURS;
import static org.jsola.hr.example.AttendanceDataTempExample.E_YEAR;
import static org.jsola.hr.example.AttendanceDataTempExample.N_ATTENDANCE_DATA_RECORD_ID;
import static org.jsola.hr.example.AttendanceDataTempExample.N_EMP_ID;
import static org.jsola.hr.example.AttendanceDataTempExample.N_EMP_NAME;
import static org.jsola.hr.example.AttendanceDataTempExample.N_EMP_PHONE;
import static org.jsola.hr.example.AttendanceDataTempExample.N_ERROR_COL;
import static org.jsola.hr.example.AttendanceDataTempExample.N_ERROR_REASON;
import static org.jsola.hr.example.AttendanceDataTempExample.N_IS_ERROR;
import static org.jsola.hr.example.AttendanceDataTempExample.N_IS_HANDLE;
import static org.jsola.hr.example.AttendanceDataTempExample.N_MONTH;
import static org.jsola.hr.example.AttendanceDataTempExample.N_SALLARY_IMPACT;
import static org.jsola.hr.example.AttendanceDataTempExample.N_SORT;
import static org.jsola.hr.example.AttendanceDataTempExample.N_VALUE;
import static org.jsola.hr.example.AttendanceDataTempExample.N_WORKING_HOURS;
import static org.jsola.hr.example.AttendanceDataTempExample.N_YEAR;

/**
 * 临时考勤数据
 *
 * @author zhr
 */
@EqualsAndHashCode(callSuper = true)
@ApiModel(description = "【临时考勤数据】详情展示对象")
@Data
public class AttendanceDataTempVO extends BaseVO {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(notes = "工种工资集合")
    private List<BigDecimal> workSalary;

    @ApiModelProperty(notes = "工作天数集合")
    private List<Integer> workDay;

    @ApiModelProperty(notes = "工种类型集合")
    private List<String> workType;

    @ApiModelProperty(notes = "岗位名称")
    private String positionName;

    @ApiModelProperty(notes = "输入流")
    private InputStream is;

    @ApiModelProperty(notes = "文件名")
    private String fileName;

    @ApiModelProperty(notes = "头像")
    private String avatar;


    @ApiModelProperty(notes = N_ID, example = E_ID)
    private String id;

    @ApiModelProperty(notes = N_WORKING_HOURS, example = E_WORKING_HOURS)
    private String workingHours;

    @ApiModelProperty(notes = N_ERROR_COL, example = E_ERROR_COL)
    private String errorCol;

    @ApiModelProperty(notes = N_ATTENDANCE_DATA_RECORD_ID, example = E_ATTENDANCE_DATA_RECORD_ID)
    private String attendanceDataRecordId;

    @ApiModelProperty(notes = N_VALUE, example = E_VALUE)
    private String value;

    @ApiModelProperty(notes = N_IS_ERROR, example = E_IS_ERROR)
    private Boolean isError;

    @ApiModelProperty(notes = N_IS_HANDLE, example = E_IS_HANDLE)
    private Boolean isHandle;

    @ApiModelProperty(notes = N_SORT, example = E_SORT)
    private Integer sort;

    @ApiModelProperty(notes = N_EMP_ID, example = E_EMP_ID)
    private String empId;

    @ApiModelProperty(notes = N_EMP_NAME, example = E_EMP_NAME)
    private String empName;

    @ApiModelProperty(notes = N_EMP_PHONE, example = E_EMP_PHONE)
    private String empPhone;

    @ApiModelProperty(notes = N_YEAR, example = E_YEAR)
    private Integer year;

    @ApiModelProperty(notes = N_MONTH, example = E_MONTH)
    private Integer month;

    @ApiModelProperty(notes = N_SALLARY_IMPACT, example = E_SALLARY_IMPACT)
    private BigDecimal sallaryImpact;

    @ApiModelProperty(notes = N_ERROR_REASON, example = E_ERROR_REASON)
    private String errorReason;

    @ApiModelProperty(notes = N_GMT_CREATE, example = E_GMT_CREATE)
    private Date gmtCreate;

    @ApiModelProperty(notes = N_GMT_MODIFIED, example = E_GMT_MODIFIED)
    private Date gmtModified;



}

